技術問答
技術文章
iT 徵才
聊天室
2026 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
第 11 屆 iThome 鐵人賽
DAY
9
0
Modern Web
JavaScript 忍者的修練--從下忍進階到中忍
系列 第
9
篇
Day 09: Execution Context & Lexical Environment
11th鐵人賽
yowlonglee
2019-09-11 23:50:21
1492 瀏覽
分享至
Execution context
JavaScript 用來追踪函式執行的機制
有全域和函式二種 execution context
每次呼叫一個函式,都會建立一個新的 execution context,原本執行中的函式 execution context 會先暫停,等到新建立的執行完,才會繼續執行暫停的 execution context
JavaScript 追踪 execution contexts 的方法是運用堆疊(stack),又稱 call stack
Call stack 總是從 global execution context 開始,成為 stack 最底部的一層,這一層在生命週期內永遠不會消失
Lexical environment
前面介紹過變數範圍,到底 JavaScript 是怎麼實現變數範圍的機制呢?靠的是 execution context 當中的 lexical environment。
當進入一個新的 execution context 時,同時也會產生一個 lexical environment。
Lexical environment 可以看作是一組對照表,是 JavaScript 用來對照識別項(identifier)和變數(variable)的對照表。
留言
追蹤
檢舉
上一篇
Day 08: Closure
下一篇
Day 10: JS的變數類型
系列文
JavaScript 忍者的修練--從下忍進階到中忍
共
30
篇
目錄
RSS系列文
訂閱系列文
35
人訂閱
26
Day 26: 正規表達式的方法
27
Day 27: JavaScript 模組化
28
Day 28: 深入事件迴圈
29
Day 29: 計時器
30
Day 30: DOM 和事件
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
19831
篇
完賽人數
528
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
17th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
react
熱門問題
誰能證明AI是一場公司的大災難
延續誰能證明ai是場災難
鼎新ERP /SMART 專案成本分析..
在這過快的年代,誰還有辦法去用手寫而不是機器鍵盤敲出全部的程式碼?別再跟我AI,希望能有手寫程式碼的真正執行人告訴我為何
Debian 13 安裝 bind9 後找不到範例檔
Fortigate的廠商說某些功能的授權因為區域限制無法購買是正常的嗎?
過勞的大大喝茶下班了嗎?
熱門回答
誰能證明AI是一場公司的大災難
鼎新ERP /SMART 專案成本分析..
在這過快的年代,誰還有辦法去用手寫而不是機器鍵盤敲出全部的程式碼?別再跟我AI,希望能有手寫程式碼的真正執行人告訴我為何
Debian 13 安裝 bind9 後找不到範例檔
Fortigate的廠商說某些功能的授權因為區域限制無法購買是正常的嗎?
熱門文章
好想跟 Discord 聊天就把專案寫好 : Claude Code Channels
AI網管課 - 怎麼建置10人網路 (概念篇)
如何設計自己的遊戲開發同事
如何用cppsp解決c++擴充類別/結構的限制
实测显示 Xiaomi MiMo-V2-Pro 已具备进入实际工作流的能力:以 Crazyrouter 统一接口对比 Claude 为例
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}